#pragma once

#include <iostream>
#include <string>

class TimeStamp
{
public:
    TimeStamp();
    explicit TimeStamp(int64_t microSecondsSinceEpoch);
    ~TimeStamp() = default;
    TimeStamp(const TimeStamp&) = default;
    TimeStamp(TimeStamp&&) = default;

    static TimeStamp now();
    std::string toString() const;
    std::string toStringForFileName() const;
private:
    int64_t microSecondsSinceEpoch_;

};